package com.gxa.employment.entity.pojo;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.Date;

import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

/**
 * <p>
 * 学生就业信息表
 * </p>
 *
 * @author author
 * @since 2025-03-25
 */
@Getter
@Setter
@ToString
@TableName("tb_employment")
public class Employment implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 就业ID
     */
    @TableId(value = "emp_id", type = IdType.AUTO)
    private Integer empId;

    /**
     * 学生ID
     */
    @TableField("stu_id")
    private Integer stuId;

    /**
     * 企业ID
     */
    @TableField("ent_id")
    private Integer entId;

    /**
     * 岗位ID
     */
    @TableField("job_id")
    private Integer jobId;

    /**
     * 就业类型:实习,全职
     */
    @TableField("emp_type")
    private String empType;

    /**
     * 就业方式:自主就业,推荐就业
     */
    @TableField("emp_method")
    private String empMethod;

    /**
     * 就业标签;正常就业，超时就业，高薪就业
     */
    @TableField("emp_tag")
    private String empTag;

    /**
     * 就业薪资
     */
    @TableField("emp_salary")
    private Double empSalary;

    /**
     * 入职时间
     */
    @TableField("emp_end_start")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "Asia/Shanghai")
    private LocalDate empEndStart;

    /**
     * 就业结束时间;因为推迟可能数据会改变
     */
    @TableField("emp_end")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "Asia/Shanghai")
    private LocalDate empEnd;

    /**
     * 创建时间
     */
    @TableField("emp_created")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai")
    private LocalDateTime empCreated;

    /**
     * 创建时间
     */
    @TableField("created")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai")
    private LocalDateTime created;

    /**
     * 更新时间
     */
    @TableField("updated")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai")
    private LocalDateTime updated;

    /**
     * 逻辑删除标识
     */
    @TableField("deleted")
    private Boolean deleted;
}
